<template>
  <div class="empty-state">
    <a-empty 
      :description="description"
      :image="image"
      :image-style="imageStyle"
    >
      <template v-if="$slots.extra" #extra>
        <slot name="extra"></slot>
      </template>
    </a-empty>
  </div>
</template>

<script setup lang="ts">
interface Props {
  description?: string
  image?: string
  imageStyle?: Record<string, any>
}

withDefaults(defineProps<Props>(), {
  description: '暂无数据'
})
</script>

<style scoped>
.empty-state {
  padding: 40px 20px;
  text-align: center;
}
</style>
